﻿using System.Linq.PageList;
using Dyao.Book.Contract;
using Dyao.Book.Entity;

namespace Dyao.Book.Repository.Abstractions
{
    public interface IBookMgrRepository : IDataRepository<BookEntity, string>
    {
        /// <summary>
        /// 分页获取书籍信息
        /// </summary>
        /// <param name="pageFilter">分页筛选器</param>
        /// <param name="cancellationToken">取消操作的通知</param>
        /// <returns>书籍信息</returns>
        Task<IPageList<BookEntity>> GetPageListAsync(IPageFilter<BookFilterDto> pageFilter, CancellationToken cancellationToken = default);
    }
}
